package Atm01;

import Polymorphic.Cats;

/**
 *
 * 超级数组
 *
 *
 */

public class SuperArray {
    private Object []objects=new Object[0];//不用set  get  不让人看
    /**
     * 增加元素到数组中
     * @param value
     */
    public void add(Object value){
        Object []newobject=new Object[objects.length+1];
        for (int i = 0; i <objects.length ; i++) {
            newobject[i]=objects[i];
        }
        newobject[newobject.length-1]=value;
        objects=newobject;
    }

    /**
     * 删除指定下标数组
     * @param index
     */
    public void remove(int index){
        Object []newObjects=new Object[objects.length-1];
        for (int i = 0; i <newObjects.length ; i++) {
            if(i<index){
                newObjects[i]=objects[i];
            }else{
                newObjects[i]=objects[i+1];
            }
        }
        objects=newObjects;
    }
    /**
     * 跟定下标获取指定元素
     * @param index
     * @return
     */
    public Object get(int index){

       return objects[index];
    }

    /**
     * 获取数组长度
     * @return
     */
    public int size(){

      return objects.length;
    }

    public static void main(String[] args) {
        SuperArray ary=new SuperArray();
        ary.add("long");
        ary.add(12365);
        ary.add(10.5015);
        ary.add(new Cats("猫",22,"男"));
        ary.add("longlong");
        ary.add("longlong");
        ary.add("longlong");
        ary.add("longlong");
        ary.add("longlong");




        ary.remove(0);
        System.out.println(ary.size());
        System.out.println(ary.get(5));


        for (int i = 0; i <ary.size() ; i++) {
            System.out.println(ary.get(i));
        }

    }

}
